package com.briup.day08;

/**
 *  引用类型转换
 * @author lining
 * @date 2024/1/17 14:27
 */
public class TestTypeChange {




    public static void main(String[] args) {
        // A类型  a类型引用 =  B类型的对象

        //1.隐式转换： 父类类型引用 指向子类对象  编译正确 运行正确
        Ball b = new BasketBall();
        Ball b2 = new FootBall();
        Object o = new Ball();
        Object o2 = new BasketBall();
        o = b;//引用o和b指向同一个BasketBall对象
        //2.手动转换(2个类之间子父类关系)
        b = (Ball) o;//小类型变量 = 大类型的地址值

        Student s = new Student();
        String s2 = new String("abc");

        o = s;//Object o= new Student();

        s2 = (String) o;// 编译通过，运行错误：ClassCastException类型转换错误
    }
}
